package com.model;

import java.util.ArrayList;
import java.util.List;

public class TbTzggExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TbTzggExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andGgbhIsNull() {
            addCriterion("ggbh is null");
            return (Criteria) this;
        }

        public Criteria andGgbhIsNotNull() {
            addCriterion("ggbh is not null");
            return (Criteria) this;
        }

        public Criteria andGgbhEqualTo(String value) {
            addCriterion("ggbh =", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhNotEqualTo(String value) {
            addCriterion("ggbh <>", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhGreaterThan(String value) {
            addCriterion("ggbh >", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhGreaterThanOrEqualTo(String value) {
            addCriterion("ggbh >=", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhLessThan(String value) {
            addCriterion("ggbh <", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhLessThanOrEqualTo(String value) {
            addCriterion("ggbh <=", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhLike(String value) {
            addCriterion("ggbh like", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhNotLike(String value) {
            addCriterion("ggbh not like", value, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhIn(List<String> values) {
            addCriterion("ggbh in", values, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhNotIn(List<String> values) {
            addCriterion("ggbh not in", values, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhBetween(String value1, String value2) {
            addCriterion("ggbh between", value1, value2, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbhNotBetween(String value1, String value2) {
            addCriterion("ggbh not between", value1, value2, "ggbh");
            return (Criteria) this;
        }

        public Criteria andGgbtIsNull() {
            addCriterion("ggbt is null");
            return (Criteria) this;
        }

        public Criteria andGgbtIsNotNull() {
            addCriterion("ggbt is not null");
            return (Criteria) this;
        }

        public Criteria andGgbtEqualTo(String value) {
            addCriterion("ggbt =", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtNotEqualTo(String value) {
            addCriterion("ggbt <>", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtGreaterThan(String value) {
            addCriterion("ggbt >", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtGreaterThanOrEqualTo(String value) {
            addCriterion("ggbt >=", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtLessThan(String value) {
            addCriterion("ggbt <", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtLessThanOrEqualTo(String value) {
            addCriterion("ggbt <=", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtLike(String value) {
            addCriterion("ggbt like", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtNotLike(String value) {
            addCriterion("ggbt not like", value, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtIn(List<String> values) {
            addCriterion("ggbt in", values, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtNotIn(List<String> values) {
            addCriterion("ggbt not in", values, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtBetween(String value1, String value2) {
            addCriterion("ggbt between", value1, value2, "ggbt");
            return (Criteria) this;
        }

        public Criteria andGgbtNotBetween(String value1, String value2) {
            addCriterion("ggbt not between", value1, value2, "ggbt");
            return (Criteria) this;
        }

        public Criteria andFbrIsNull() {
            addCriterion("fbr is null");
            return (Criteria) this;
        }

        public Criteria andFbrIsNotNull() {
            addCriterion("fbr is not null");
            return (Criteria) this;
        }

        public Criteria andFbrEqualTo(String value) {
            addCriterion("fbr =", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrNotEqualTo(String value) {
            addCriterion("fbr <>", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrGreaterThan(String value) {
            addCriterion("fbr >", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrGreaterThanOrEqualTo(String value) {
            addCriterion("fbr >=", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrLessThan(String value) {
            addCriterion("fbr <", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrLessThanOrEqualTo(String value) {
            addCriterion("fbr <=", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrLike(String value) {
            addCriterion("fbr like", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrNotLike(String value) {
            addCriterion("fbr not like", value, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrIn(List<String> values) {
            addCriterion("fbr in", values, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrNotIn(List<String> values) {
            addCriterion("fbr not in", values, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrBetween(String value1, String value2) {
            addCriterion("fbr between", value1, value2, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbrNotBetween(String value1, String value2) {
            addCriterion("fbr not between", value1, value2, "fbr");
            return (Criteria) this;
        }

        public Criteria andFbsjIsNull() {
            addCriterion("fbsj is null");
            return (Criteria) this;
        }

        public Criteria andFbsjIsNotNull() {
            addCriterion("fbsj is not null");
            return (Criteria) this;
        }

        public Criteria andFbsjEqualTo(String value) {
            addCriterion("fbsj =", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjNotEqualTo(String value) {
            addCriterion("fbsj <>", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjGreaterThan(String value) {
            addCriterion("fbsj >", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjGreaterThanOrEqualTo(String value) {
            addCriterion("fbsj >=", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjLessThan(String value) {
            addCriterion("fbsj <", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjLessThanOrEqualTo(String value) {
            addCriterion("fbsj <=", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjLike(String value) {
            addCriterion("fbsj like", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjNotLike(String value) {
            addCriterion("fbsj not like", value, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjIn(List<String> values) {
            addCriterion("fbsj in", values, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjNotIn(List<String> values) {
            addCriterion("fbsj not in", values, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjBetween(String value1, String value2) {
            addCriterion("fbsj between", value1, value2, "fbsj");
            return (Criteria) this;
        }

        public Criteria andFbsjNotBetween(String value1, String value2) {
            addCriterion("fbsj not between", value1, value2, "fbsj");
            return (Criteria) this;
        }

        public Criteria andGgnrIsNull() {
            addCriterion("ggnr is null");
            return (Criteria) this;
        }

        public Criteria andGgnrIsNotNull() {
            addCriterion("ggnr is not null");
            return (Criteria) this;
        }

        public Criteria andGgnrEqualTo(String value) {
            addCriterion("ggnr =", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrNotEqualTo(String value) {
            addCriterion("ggnr <>", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrGreaterThan(String value) {
            addCriterion("ggnr >", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrGreaterThanOrEqualTo(String value) {
            addCriterion("ggnr >=", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrLessThan(String value) {
            addCriterion("ggnr <", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrLessThanOrEqualTo(String value) {
            addCriterion("ggnr <=", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrLike(String value) {
            addCriterion("ggnr like", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrNotLike(String value) {
            addCriterion("ggnr not like", value, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrIn(List<String> values) {
            addCriterion("ggnr in", values, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrNotIn(List<String> values) {
            addCriterion("ggnr not in", values, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrBetween(String value1, String value2) {
            addCriterion("ggnr between", value1, value2, "ggnr");
            return (Criteria) this;
        }

        public Criteria andGgnrNotBetween(String value1, String value2) {
            addCriterion("ggnr not between", value1, value2, "ggnr");
            return (Criteria) this;
        }

        public Criteria andXgljIsNull() {
            addCriterion("xglj is null");
            return (Criteria) this;
        }

        public Criteria andXgljIsNotNull() {
            addCriterion("xglj is not null");
            return (Criteria) this;
        }

        public Criteria andXgljEqualTo(String value) {
            addCriterion("xglj =", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljNotEqualTo(String value) {
            addCriterion("xglj <>", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljGreaterThan(String value) {
            addCriterion("xglj >", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljGreaterThanOrEqualTo(String value) {
            addCriterion("xglj >=", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljLessThan(String value) {
            addCriterion("xglj <", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljLessThanOrEqualTo(String value) {
            addCriterion("xglj <=", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljLike(String value) {
            addCriterion("xglj like", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljNotLike(String value) {
            addCriterion("xglj not like", value, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljIn(List<String> values) {
            addCriterion("xglj in", values, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljNotIn(List<String> values) {
            addCriterion("xglj not in", values, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljBetween(String value1, String value2) {
            addCriterion("xglj between", value1, value2, "xglj");
            return (Criteria) this;
        }

        public Criteria andXgljNotBetween(String value1, String value2) {
            addCriterion("xglj not between", value1, value2, "xglj");
            return (Criteria) this;
        }

        public Criteria andJsdxIsNull() {
            addCriterion("jsdx is null");
            return (Criteria) this;
        }

        public Criteria andJsdxIsNotNull() {
            addCriterion("jsdx is not null");
            return (Criteria) this;
        }

        public Criteria andJsdxEqualTo(String value) {
            addCriterion("jsdx =", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxNotEqualTo(String value) {
            addCriterion("jsdx <>", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxGreaterThan(String value) {
            addCriterion("jsdx >", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxGreaterThanOrEqualTo(String value) {
            addCriterion("jsdx >=", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxLessThan(String value) {
            addCriterion("jsdx <", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxLessThanOrEqualTo(String value) {
            addCriterion("jsdx <=", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxLike(String value) {
            addCriterion("jsdx like", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxNotLike(String value) {
            addCriterion("jsdx not like", value, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxIn(List<String> values) {
            addCriterion("jsdx in", values, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxNotIn(List<String> values) {
            addCriterion("jsdx not in", values, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxBetween(String value1, String value2) {
            addCriterion("jsdx between", value1, value2, "jsdx");
            return (Criteria) this;
        }

        public Criteria andJsdxNotBetween(String value1, String value2) {
            addCriterion("jsdx not between", value1, value2, "jsdx");
            return (Criteria) this;
        }

        public Criteria andYdztIsNull() {
            addCriterion("ydzt is null");
            return (Criteria) this;
        }

        public Criteria andYdztIsNotNull() {
            addCriterion("ydzt is not null");
            return (Criteria) this;
        }

        public Criteria andYdztEqualTo(String value) {
            addCriterion("ydzt =", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztNotEqualTo(String value) {
            addCriterion("ydzt <>", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztGreaterThan(String value) {
            addCriterion("ydzt >", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztGreaterThanOrEqualTo(String value) {
            addCriterion("ydzt >=", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztLessThan(String value) {
            addCriterion("ydzt <", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztLessThanOrEqualTo(String value) {
            addCriterion("ydzt <=", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztLike(String value) {
            addCriterion("ydzt like", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztNotLike(String value) {
            addCriterion("ydzt not like", value, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztIn(List<String> values) {
            addCriterion("ydzt in", values, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztNotIn(List<String> values) {
            addCriterion("ydzt not in", values, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztBetween(String value1, String value2) {
            addCriterion("ydzt between", value1, value2, "ydzt");
            return (Criteria) this;
        }

        public Criteria andYdztNotBetween(String value1, String value2) {
            addCriterion("ydzt not between", value1, value2, "ydzt");
            return (Criteria) this;
        }

        public Criteria andGglxIsNull() {
            addCriterion("gglx is null");
            return (Criteria) this;
        }

        public Criteria andGglxIsNotNull() {
            addCriterion("gglx is not null");
            return (Criteria) this;
        }

        public Criteria andGglxEqualTo(String value) {
            addCriterion("gglx =", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxNotEqualTo(String value) {
            addCriterion("gglx <>", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxGreaterThan(String value) {
            addCriterion("gglx >", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxGreaterThanOrEqualTo(String value) {
            addCriterion("gglx >=", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxLessThan(String value) {
            addCriterion("gglx <", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxLessThanOrEqualTo(String value) {
            addCriterion("gglx <=", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxLike(String value) {
            addCriterion("gglx like", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxNotLike(String value) {
            addCriterion("gglx not like", value, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxIn(List<String> values) {
            addCriterion("gglx in", values, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxNotIn(List<String> values) {
            addCriterion("gglx not in", values, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxBetween(String value1, String value2) {
            addCriterion("gglx between", value1, value2, "gglx");
            return (Criteria) this;
        }

        public Criteria andGglxNotBetween(String value1, String value2) {
            addCriterion("gglx not between", value1, value2, "gglx");
            return (Criteria) this;
        }

        public Criteria andXgtpIsNull() {
            addCriterion("xgtp is null");
            return (Criteria) this;
        }

        public Criteria andXgtpIsNotNull() {
            addCriterion("xgtp is not null");
            return (Criteria) this;
        }

        public Criteria andXgtpEqualTo(String value) {
            addCriterion("xgtp =", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpNotEqualTo(String value) {
            addCriterion("xgtp <>", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpGreaterThan(String value) {
            addCriterion("xgtp >", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpGreaterThanOrEqualTo(String value) {
            addCriterion("xgtp >=", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpLessThan(String value) {
            addCriterion("xgtp <", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpLessThanOrEqualTo(String value) {
            addCriterion("xgtp <=", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpLike(String value) {
            addCriterion("xgtp like", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpNotLike(String value) {
            addCriterion("xgtp not like", value, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpIn(List<String> values) {
            addCriterion("xgtp in", values, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpNotIn(List<String> values) {
            addCriterion("xgtp not in", values, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpBetween(String value1, String value2) {
            addCriterion("xgtp between", value1, value2, "xgtp");
            return (Criteria) this;
        }

        public Criteria andXgtpNotBetween(String value1, String value2) {
            addCriterion("xgtp not between", value1, value2, "xgtp");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}